Instant Messaging and Presence Services (IMPS) is the latest technique for a new communication device based on the Internet. The IMPS is used for exchanging status information, such as presence information, among a mobile device, a mobile communication service system and an Internet-based instant messaging service system. A remarkable feature of the IMPS is that it provides both the status service and the instant messaging service.
The status service provides a state of an IMPS client, a state of a user, and management of a list of users registered for a service. The instant messaging service allows an instant message including text, video, pictures or sound to be transmitted to or received from a user of a specific client or a user of a different instant messaging system.
A client is a device program used to contact and obtain information from a program on another device. Typically, the device is linked to a network such as the Internet. The IMPS system comprises a client mounted in a specific device, wherein the client implements the IMPS. The IMPS system also comprises a server for connecting a session to clients and transmitting status information and an instant message to a corresponding client.
Status information of contacts registered in the client and status information stored in the server can be synchronized using the two following methods.
One method is a status information notification method. When status information of a contact registered in one client changes, the server provides status information including the corresponding status information to other clients. When status information of a contact registered in the server is updated, the server transmits a status information notification request message (PresenceNotificationRequest) including the updated status information to a client. The client then responds with a status message.
In the status information notification method, whenever status information of a contact registered in the client changes, the server automatically provides the status information to the client. Even when a user of the corresponding client does not check the status information of the contact, the server continuously transmits the status information data to the client. Accordingly, although the user of the client does not need the status information of the contact, the status information is transmitted.
The second method is a status information acquiring method. Here, a client retrieves status information of contacts registered for the client itself from the server. When the client transmits a status information acquiring request message (GetPresenceRequest) comprising a user ID or a contact list name to the server, the server transmits a status information acquiring response message (GetPresenceResponse) comprising a result with respect to the request and a status attribute to the corresponding client.
However, the status information acquiring method is problematic. When status information is requested for contacts whose status has not been changed, the server continues to transmit through a wireless channel status information for every contact according to the corresponding request. Therefore, traffic increases and a channel is wasted.